Proposal by Sundeep Kumar Mishra for OpenSSL Smalltalk wrapper

Proposed by Sundeep Mishra (profile, biography) Don't forget to submit this proposal to official Google Melange site too!


How will I do that project

I will start the project by first understanding the openSSL library and all the services offered by it. I have already used a small set of services from the openSSL library , but this time i would like to go through, even at implementation level, the important facilities which are being used by existing Smalltalk dialects or plugins.

I am good at Squeak and VisualAge Smalltalk. I would like to discuss with the mentors which Smalltalk would provide a better platform for development of the project.

Parallel to understanding openSSL library thoroughly, I would like to experiment with some the dialects and plugins of the Smalltalk which support openSSL like CurlPlugin for Squeak and SCI API for VisualAge Smalltalk.

After this I would like to discuss with mentors what are the final set of services for which we need to create the interface.
Some of the services for which we need to create the interface can be the following :-

1. deployment of secure proxy services based upon the Web Services Definition Language.
2. Secure transport mechanisms like V6.0, HTTP, HTTPS
3. Secure Database connection services
4. TCP protocols
5. SSL connections
6. Certificate authority

After this I will start the implementation part. I will use an object-oriented approach to construct the interfaces and incremental approach to develop the whole project.

As soon as the implementation part is done, we will try to test it under various conditions. Unit Testing,Functional Testing, Intergration Testing, Performance Testing will be various kind of testing we would like to perform.

After testing I would like to create a user as well as a developer manual for the project.

 

Proposed Methodologies:

1. Methodologies, Algorithms and implementations from the openSSL project.
2. Squeak or VisualAge  Smalltalk 
3. Methodologies and principles to create an user friendly interface.
4. Resolving all the issues of portability as well as usability.
5. Various Features of Object-Oriented Programming.
6. Incremental approach for development of project.

 

Timeline and Milestones:

1. Understanding OpenSSL sevices as well their Implementation :- By May 24,2010
2. Using some openSSL plugins and dialects for Smalltalk: - By May 24,2010
3. deciding openSSL service for which we need to build the Smalltalk  interface :- By May 24, 2010
4. Designing Issues , prototype design , Class designs and Starting the Implementation :- By 10 June, 2010
5. Potential Issues and Full Implementation of Important Services :- By 10th July, 2010
6. Full Implementation of Rest of Services :- By 25th July, 2010
7. Writing Test Cases and Documentation :- By 5th August, 2010
8. Final Result including all the services, successfully testing, a User Manual and Developer Manual :- By 10th August,2010
9. Final submission of Code and other Materials :- On 30th August,2010

Some Risks:

1. Difficulty level of implementing the Certificate authorization.

Final Result:

1. As a Final Result we will create interface for various services offered by openSSL. We will integrate these services with a current version of Smalltalk.  Users will be able to use these services very easily.
2. Set of some examples through which user can understand how to use openSSL interface.
3. Developer Manual as well as User Manual.




Updated: 9.4.2010